/*
 * Copyright (c) 2025 EasyAdmin
 * All rights reserved.
 *
 * This file is part of the [EasAdmin] project.
 * Unauthorized copying of this file, via any medium, is strictly prohibited.
 * Proprietary and confidential.
 *
 * Author: EasyAdmin ( 1073602@qq.com )
 * Website: https://www.xhxiao.com
 */
package com.easy.module.system.query;

import com.easy.framework.common.model.BaseQuery;
import com.easy.framework.database.annotation.Query;
import com.easy.framework.database.annotation.QueryType;
import lombok.Getter;
import lombok.Setter;

/**
 * 菜单权限表 查询实体
 *
 * @author EasyAdmin ( 1073602@qq.com )
 * @date 2025-08-19
 */
@Getter
@Setter
public class SysMenuQuery extends BaseQuery {
    private static final long serialVersionUID = 1L;

    /**
     * 菜单ID
     */
    @Query
    private Long id;

    /**
     * 菜单名称
     */
    @Query(type = QueryType.LIKE)
    private String name;

    /**
     * 父级菜单ID
     */
    @Query
    private Long parentId;

    /**
     * 是否外链（0否 1是）
     */
    @Query
    private Boolean isFrame;

    /**
     * 是否缓存（0不缓存 1缓存）
     */
    @Query
    private Boolean isCache;

    /**
     * 菜单类型（B板块 M目录 C菜单 F按钮）
     */
    @Query
    private String type;

    /**
     * 是否可见（0隐藏 1显示）
     */
    @Query
    private Boolean visible;

    /**
     * 菜单状态（0正常 1停用）
     */
    @Query
    private Integer status;

    /**
     * 权限标识
     */
    @Query
    private String sign;

    @Query(name = "type", type = QueryType.IN)
    private String[] inTypes;
}
